This invention relates to computer numerically controlled (CNC) machine tools and in particular to computer generated visual simulation techniques for said machine tools.
The development of multi-axis and multi-function machine tools in conjunction with the development of sophisticated computer controlled operation has facilitated the emergence of a generation of very high speed precision machine tools capable of complex multi-step operations from one machine.
Typically a CNC machine is controlled by a computer program, called a xe2x80x9cpart programxe2x80x9d, which serially instructs the machine to perform a sequential series of discrete operations in a predetermined sequence so that a movable operative part of the machine tool, such as a milling cutter or grinding wheel, moves along a programmed path determined by the part program. Each individual instruction is termed a xe2x80x9cblockxe2x80x9d and may constitute a determining command for each or a combination of controllable axes. For example, a block may instruct a grinding wheel to move 5 mm in the Y axis at a given velocity or instruct a grinding wheel to rotate and move forward 0.05 mm in the X and Y axes at a given velocity. The blocks, once programmed into the computer, are then fixed in a set sequential order. The whole set of sequential blocks may then be automatically operated by the CNC machine which then operates from start to finish of the part program.
Whilst this definition of a part program describes the traditional means of generating the xe2x80x9cprogrammed pathxe2x80x9d this invention is equally applicable to other means of generating the programmed paths whether or not they involve the generation or use of a part program. Such techniques may include direct control of the programmed path from within a machine tool programming system or the like. In the context of this invention, programmed path refers to any sequence of data deemed to represent as a minimum, the spatial path that the operative part of the machine tool is programmed to take with respect to the workpiece and xe2x80x9cpart programmexe2x80x9d refers to any program, program file or sequence data which controls or encapsulates this part program.
It is desirable when testing a part program for a complex machine tool to provide a visual simulation of the motion of the operative part of the machine tool and the machining process prior to physically operating the motion of the operative part. This simulation can be performed off-line using suitably configured three-dimensional graphics simulation systems but therein relies on separate computing equipment to that provided by the CNC of the machine tool and corresponding complexity in transferring part programs and simulation data between the CNC and the simulation computer.
For one particular class of machines, the tool and cutter grinder, it is particularly useful to provide an accurate graphical simulation of the machining process. To date this has been difficult because of the inherent geometrical complexity of the tool grinding process. A CNC tool and cutter grinder typically has at least four continuous path axes and is used to manufacture or resharpen spiral fluted cutting tools (the workpiece) such as end-mills, rotary files, drills, reamers and the like. Hereinafter the terms workpiece and cutting tool are used interchangeably. The surface features that are produced on these workpieces are usually generated by complex sweeping motions of the grinding wheel(s) whereby the resultant surface is more geometrically complex than the surface of the grinding wheel. It is therefore difficult to ensure that the desired workpiece shape is produced from the parameters entered into the part program that defines the motions of the grinding wheel of the tool and cutter grinder without the use of three dimensional graphics simulation. Traditional three dimensional simulation tools are not capable of processing the complex data produced by a multi-axis CNC controlled tool and cutter grinder.
It is therefore desirable to provide a computerised simulation environment for tool and cutter grinding machines which provides automated, computerised tools that are based on work practices that are used in manual simulation and verification procedures.
It is also desirable to provide a CNC for complex multi-axis machine tools which can provide three-dimensional, shaded colour graphics simulation of the machining process without the need for an additional simulation computing system.
It is further desirable to provide a calculation system that provides complete mathematical surface descriptions for the purpose of more accurate machine tool path generation in complex multi-axis machine tools.
According to one aspect of the invention there is provided a simulation system for a computer numerically controlled (CNC) tool grinding machine having at least one movable grinding wheel for operating on a workpiece;
said CNC tool grinding machine being programmed to perform a sequential series of discrete operations in a predetermined sequence to control movement of the grinding wheel along a programmed path;
said CNC machine tool including a grinding machine tool programming system to generate data representing information about the grinding wheel, the workpiece and the programmed path;
wherein the simulation system includes:
processing means for processing the data generated by the machine tool programming system to produce a three-dimensional image of the workpiece as it would appear after operation of the grinding wheel upon the workpiece in accordance with the programmed path;
a visual display unit (VDU) for displaying the three dimensional image; and
manipulation and control means for manipulating and controlling the appearance of the three-dimensional image on the visual display unit,
the processing means including envelope calculation means which calculates envelope data representing the skin of the solid volume occupied by the grinding wheel during its motion along the programmed path, and the envelope data is subtracted from blank data representing the shape of the workpiece prior to operation of the grinding wheel upon the workpiece to produce swept surface data representing the position and properties of the surface of the workpiece as it would appear during and after operation of the grinding wheel on the workpiece.
Preferably, the processing means is also arranged to produce a three-dimensional image of the grinding wheel for display on the visual display unit. The processing means is preferably arranged to generate perspective views of the workpiece and/or grinding wheel from different viewing directions, and the display of said perspective views is controlled by the manipulation and control means.
The machine tool may be programmed to manufacture a workpiece (e.g. a cutting tool) from a blank workpiece. Alternatively, the machine tool may be programmed to sharpen the edges of an existing workpiece (e.g. a cutting tool). The method of the present invention is particularly applicable to CNC machines in which a grinding wheel is programmed to move with at least four degrees of freedom relative to a workpiece to manufacture or sharpen a spiral fluted cutting tool (the workpiece). Examples of spiral fluted cutting tools which may be manufactured or sharpened by a CNC machine incorporating the invention include: end-mills; rotary files; drills; reamers and the like.
The simulation system is preferably incorporated within the CNC machine to form part of the CNC machine. Alternatively, the simulation system may comprise a computer system separate from, but in communication with, the machine tool programming system.
Preferably, the processing means is arranged to generate envelope data representing the outer limits of motion of the grinding wheel by solving the 4, 5 or 6 degree of freedom equations representing the motion of the grinding wheel.
The simulation system preferably includes calculation means programmed to calculate the swept surface data for the workpiece image by Boolean subtraction of the envelope data from the blank data. The surface data corresponds to the position and surface properties of the surface of the workpiece as it would appear during and after being operated upon or xe2x80x9csweptxe2x80x9d by the grinding wheel.
Preferably, the simulation system includes a three dimensional image rendering engine arranged to produce a three dimensional rendered image of the workpiece and, optionally, of the grinding wheel which can then be displayed on a visual display unit (VDU) of the simulation system.
The simulation system may include overlay means for generating a scaled grid overlay controlled by the manipulation and control means for display on the VDU simultaneously with the three-dimensional image. This is advantageous in that it enables measurements of the workpiece image to be made.
The scaled grid overlay preferably comprises concentric circles and radial lines originating from the center of the circles and said concentric circles are marked with a scale to indicate the radius of each circle as it applies to the scale of the three dimensional image of the workpiece.
The manipulation and control means may also manipulate and control other features of the image displayed on the VDU. The manipulation and control means may be used for a variety of purposes, including the manipulation and control of: the relative size and position of the image on the VDU; simulated light sources for illumination of the image of the workpiece or cutting tool; and/or the appearance of the image.
The simulation system may be used to simulate a machining process of the CNC machine. This is preferably achieved by the system being programmed or controlled to generate animated sequences of images which depict the machining process at successive time intervals by producing three dimensional images of the machined workpiece as it would appear at time intervals during the actual machining process. Accordingly, the manipulation and control means may be used to control the simulation system to display continuous machining operations, individual machining operations, or the completed workpiece only.
The simulation system may include map generating means for generating and displaying a texture map and/or colour map of the surface of the grinding wheel of the machine tool or of the workpiece which map can be superimposed onto the three dimensional rendered image of the grinding wheel or simulated workpiece.
A texture map may consist of fine lines, the density and direction of which may simulate surface scratches which would be produced as a result of the cutting action of the grinding wheel scratching the surface of the workpiece during the machining process.
Alternatively, a colour map may consist of a graduated, colour coded image of the workpiece and/or of the grinding wheel. The simulation system may be arranged to display a colour coded view of the grinding wheel and workpiece wherein the colour of each region of the surface of the workpiece represents a similarly colour coded region of the grinding wheel that would grind the region of the workpiece during the machining process. Alternatively, the simulation system may be arranged to display a colour coded image of the workpiece wherein the colour of each region of the surface of the workpiece represents the scale of the volume of material to be removed per unit of time when the grinding wheel is in contact with the region during the machining process.
A texture map may also consist of one or more curved lines superimposed on the three-dimensional image of the workpiece. The lines may represent instantaneous lines of contact between the machine tool and the workpiece surface at specific times of the machining process. Alternatively, or additionally curved lines may represent lines of constant contact between specific regions of the grinding wheel and the machined surface of the workpiece over the continuum of intervals of the machining process.
According to another aspect of the invention there is provided a CNC tool grinding machine including a simulation system in accordance with the first aspect of the invention and a path controller for controlling movement of the grinding wheel of the CNC tool grinding machine, wherein the swept surface data is transferred to the path controller for adjusting the machining path of the grinding wheel. This enables features of the workpiece (e.g. flutes of a cutting tool) to be machined more accurately during the machining process of the CNC tool grinding machine.